There are now 3 uDAPL providers for openib (openib,openib_scm,openib_cma). 


==========
1.0 BUILD:
==========

The default build is now set to openib_cma. This version requires librdmacm 
installation, IPoIB installation, and IPoIB configuration with an IP address. 

Building DAT library:
--------------------
cd dat/udat
make clean
make

the dat library target directory is dat/udat/$(ARCH)/Target

Building default DAPL library:
----------------------------

cd dapl/udapl
make clean
make 

the dapl library target directory is dapl/udapl/Target

NOTE: to link these libraries you must either use libtool and 
specify the full pathname of the library, or use the `-LLIBDIR' 
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.

Building specific verbs provider set VERBS to provider name:
-----------------------------------------------------------
example for socket cm version (openib_scm): 

cd dapl/udapl
make VERBS=openib_scm clean
make VERBS=openib_scm 

===================
2.0 CONFIGURATION:
===================

sample /etc/dat.conf 

#
# DAT 1.2 configuration file
#
# Each entry should have the following fields:
#
# <ia_name> <api_version> <threadsafety> <default> <lib_path> \
#           <provider_version> <ia_params> <platform_params>
#
# Example for openib_cma and openib_scm 
#
# For scm version you specify <ia_params> as actual device name and port
# For cma version you specify <ia_params> as:
# 	network address, network hostname, or netdev name and 0 for port
#
OpenIB-scm1 u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "mthca0 1" ""
OpenIB-scm2 u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "mthca0 2" ""
OpenIB-cma-ip u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "192.168.0.22 0" ""
OpenIB-cma-name u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "svr1-ib0 0" ""
OpenIB-cma-netdev u1.2 nonthreadsafe default /usr/local/openib_dapl/udapl/Target/libdapl.so mv_dapl.1.2 "ib0 0" ""

=============================
3.0 SAMPLE uDAPL APPLICATION:
=============================

sample makefile for simple application (dapl/test/dtest.c) base on prevous dat.conf settings:

CC = gcc
CFLAGS = -O2 -g

DAT_INC = ../../dat/include
DAT_LIB = /usr/local/lib

all: dtest

clean:
        rm -f *.o;touch *.c;rm -f dtest

dtest: ./dtest.c
        $(CC) $(CFLAGS) ./dtest.c -o dtest \
        -DDAPL_PROVIDER='"OpenIB_cma_name"' \
        -I $(DAT_INC) -L $(DAT_LIB) -ldat

